Aggregate Predicate Support in DBMS

نویسندگان

  • Apostol Natsev
  • Gene Y. C. Fuh
  • Weidong Chen
  • Chi-Huang Chiu
  • Jeffrey Scott Vitter
چکیده

In this paper we consider aggregate predicates and their support in database systems. Aggregate predicates are the predicate equivalent to aggregate functions in that they can be used to search for tuples that satisfy some aggregate property over a set of tuples (as opposed to simply computing an aggregate property over a set of tuples). The importance of aggregate predicates is exempli ed by many modern applications that require ranked search, or top-k queries. Such queries are the norm in multimedia and spatial databases. In order to support the concept of aggregate predicates in DBMS, we introduce several extensions in the query language and the database engine. Speci cally, we extend the SQL syntax to handle aggregate predicates and work out the semantics of such extensions so that they behave correctly in the existing database model. We also propose a a new rk SORT operator into the database engine, and study relevant indexing and query optimization issues. Our approach provides several advantages, including enhanced usability and improved performance. By supporting aggregate predicates natively in the database engine, we are able to reuse existing indexing and query optimization techniques, without sacri cing generality or incurring the runtime overhead of database-external approaches. To the best of our knowledge, the proposed framework is the rst to support userde ned indexing with aggregate predicates and search based upon user-de ned ranking. We also provide empirical results from a simulation study that validates the e ectiveness of our

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Aqua: A Fast Decision Support System Using Approximate Query Answers

Aqua is a system for providing fast, approximate answers to aggregate queries, which are very common in OLAP applications. It has been designed to run on top of any commercial relational DBMS. Aqua precomputes synopses (special statistical summaries) of the original data and stores them in the DBMS. It provides approximate answers (with quality guarantees) by rewriting the queries to run on the...

متن کامل

Aqua: A Fast Decision Support Systems Using Approximate Query Answers

Aqua is a system for providing fast, approximate answers to aggregate queries, which are very common in OLAP applications. It has been designed to run on top of any commercial relational DBMS. Aqua precomputes synopses (special statistical summaries) of the original data and stores them in the DBMS. It provides approximate answers (with quality guarantees) by rewriting the queries to run on the...

متن کامل

A Framework for Parallel Processing of Aggregate and Scalar Functions in Object - Relational DBMS 1

Nowadays parallel object-relational DBMS are envisioned as the next great wave but there is still a lack of efficient implementation concepts for some parts of the proposed functionality. One of the current goals for parallel object-relational DBMS is to move towards higher performance. In our view the main potential for performance increases lies in providing additional optimization and execut...

متن کامل

Using q-grams in a DBMS for Approximate String Processing

String data is ubiquitous, and its management has taken on particular importance in the past few years. Approximate queries are very important on string data. This is due, for example, to the prevalence of typographical errors in data, and multiple conventions for recording attributes such as name and address. Commercial databases do not support approximate string queries directly, and it is a ...

متن کامل

Separation Logic Predicates for Aggregate Data Types

Many imperative languages have type systems built from a few elementary types with rules for building aggregate types. In C, integers, floating point numbers, and pointers are elementary types; struct, union and array build aggregates. When using separation logic to write assertions for such languages, one uses separating conjunction ∗ to describe aggregate values in memory. These conjunctions ...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2002